package cartes;

import comportement.ActionCarte;
import plateau.Joueur;

public class Action extends Carte {

    /*
     * Attributs
     */
    protected boolean selfUse;

    /*
     * Constructeur
     */
    public Action(String nom, String description, int categorie, ActionCarte a, String chemin, boolean selfUse) {
        // Constructeur de Carte
        super(nom, description, categorie);

        // Attributs génériques
        this.actionCarte = a;
        this.incidentFacheux = null;
        this.malusMonstre = null;
        this.actionClasse = null;
        this.cheminImage = chemin;
        
        // Attributs spécifiques
        this.selfUse = selfUse;
    }

    /*
     * Méthodes
     */
    @Override
    public void combattre() {

    }

    @Override
    public void equiper() {

    }

    @Override
    public void fuir() {

    }

    @Override
    public void utiliser() {
        
    }
    
    @Override
    public void utiliser(Joueur j) {
        this.actionCarte.utiliser(j);
    }
    
    @Override
    public void utiliser(Joueur j, Joueur j2) {
        this.actionCarte.utiliser(j, j2);
    }

    @Override
    public void utiliserPouvoir() {

    }

    public boolean isSelfUse() {
        return selfUse;
    }

    
    /*
     * Getters & Setters
     */

    @Override
    public boolean equipable() {
        return false;
    }
    
    @Override
    public boolean utilisable() {
        return true;
    }

}